/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.project.controller;

/**
 *
 * @author thetrungbk
 */

/* Class này đóng vai trò:
 *
 * 1/ Lưu trữ nội dung file DatabaseHelper bằng đối tượng StringBuffer sb.
 * 2/ Các hàm trong lớp này dùng để nối thêm String vào sb thôi (Sẽ đc giải thích kĩ trên từng hàm)
 *
 */
public class CodeWriter {

    private StringBuffer sb = new StringBuffer();

    public CodeWriter() {
    }

    /**
     * <code>beginMethod("public void insertStudent(Student student)")<code>
     * @param method
     */

    //Cái này sẽ append tên method + type + accessible của nó
    public CodeWriter beginMethod(String method) {
        sb.append(method + "{\n");
        return this;
    }


    //Hàm này là append các kí tự kết thúc method
    public CodeWriter endMethod() {
        sb.append("\n}\n");
        return this;
    }

    //Xuống dòng
    public CodeWriter writeLine() {
        sb.append("\n");
        return this;
    }
    public CodeWriter writeLine(String line) {        
        sb.append(line);
        writeLine();
        return this;
    }


    public CodeWriter append(String st) {
        sb.append(st);
        return this;
    }

    @Override
    public String toString() {
        return sb.toString();
    }

    public void backSpace() {
        sb.deleteCharAt(sb.length() - 1);
    }
}
